package com.example.workshop.lesson8;
import jdk.swing.interop.SwingInterOpUtils;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.ApplicationContext;

@SpringBootApplication
public class MovieRecommenderSystemApplication {

    public static void main(String[] args) {
        //ApplicationContext负责管理Bean和依赖关系。
        ApplicationContext appContext= SpringApplication.run(
                MovieRecommenderSystemApplication.class,args
        );
        //从ApplicationContest中获取三次singleton
        ContentBasedFilter cbf1=appContext.getBean(ContentBasedFilter.class);
        ContentBasedFilter cbf2=appContext.getBean(ContentBasedFilter.class);
        ContentBasedFilter cbf3=appContext.getBean(ContentBasedFilter.class);

        System.out.println(cbf1);
        System.out.println(cbf2);
        System.out.println(cbf3);

        //从ApplicationContest检索三次prototype Bean
//        CollaborativeFilter caf1=appContext.getBean(CollaborativeFilter.class);
//        CollaborativeFilter caf2=appContext.getBean(CollaborativeFilter.class);
//        CollaborativeFilter caf3=appContext.getBean(CollaborativeFilter.class);
//
//        System.out.println(caf1);
//        System.out.println(caf2);
//        System.out.println(caf3);
    }
}


